Complex functions are often difficult to implement in hardware. A hardware implementation may be a dedicated circuit that takes an input and returns an output corresponding to the function. When functions are quite complex, performing the actual calculations of the function can consume a large amount of circuitry and this area of an integrated circuit.
Some complex functions may be represented using lookup tables or piecewise linear approximations. Such representations may have accuracy or performance problems.